package com.shanghaionstar.nav.service;

import com.onstar.cn.framework.mvp.base.core.BaseActivity;
import com.onstar.cn.map.common.LocationType;
import com.onstar.cn.map.common.PoiItemInfo;
import com.shanghaionstar.nav.model.NavDataHolder;
import com.shanghaionstar.swipe.SwipeActivity;
import com.shanghaionstar.utils.MapHandler;

/**
 * Created by 6335yz on 2016/7/13.
 */
public abstract class AbstractMapActivity extends BaseActivity {

    private NavDataHolder navDataHolder = new NavDataHolder();

    public NavDataHolder getNavDataHolder() {
        return navDataHolder;
    }

    public void setNavDataHolder(NavDataHolder navDataHolder) {
        this.navDataHolder = navDataHolder;
    }

    public void clearMapRoutePoi() {
        navDataHolder.setEndPoi(null);
        navDataHolder.setStartPoi(null);
    }

    protected MapHandler mapHandler;

    protected MapHandler chooseMapHandler;

    protected MapHandler routeMapHandler;

    protected MapHandler footPrintHandler;

    public void initRouteMapHandler(MapHandler routeMapHandler) {
        this.routeMapHandler = routeMapHandler;
    }

    public MapHandler getRouteMapHandler() {
        return routeMapHandler;
    }

    public void initChooseMapHandler(MapHandler chooseMapHandler) {
        this.chooseMapHandler = chooseMapHandler;
    }

    public MapHandler getChooseMapHandler() {
        return chooseMapHandler;
    }

    abstract public void initMapHandler(MapHandler mapHandler);

    public MapHandler getMapHandler() {
        return mapHandler;
    }

    abstract public void showPoiToMap(PoiItemInfo poiItemInfo, LocationType locationType);
}
